//
//  CombinationGoodsVc.swift
//  Pods
//
//  Created by eme on 2017/4/5.
//
//
/*
 owner:  gyh
 update: 2017年04月05日09:09:26
 info:   查看组合商品
 */
import UIKit
import RickonCore
import UtilCore

class CombinationGoodsVc: Empty_TVc{
    
    /****************************Storyboard UI设置区域****************************/
    @IBOutlet weak var custom_TableView: UITableView!
    
    /*----------------------------   自定义属性区域    ----------------------------*/
    var GroupVm:GetOrderGroupVm?
    var orderId:String?
    var pdid:String?
    var groupModel:GroupModel?{
        didSet{
            self.custom_TableView.reloadData()
        }
    }
    var type = 0         //1:表示组合商品,其余:表示买赠商品
    
    /****************************Storyboard 绑定方法区域****************************/
    
    
    
    /**************************** 以下是方法区域 ****************************/
    override func viewDidLoad() {
        super.viewDidLoad()
        
    }
    
    override func viewWillAppear(_ animated: Bool) {
        super.viewWillAppear(animated)
        
        guard let pdid = self.pdid else {
            // 变量不符合条件判断时，执行下面代码
            return
        }
        guard let orderId = self.orderId else {
            // 变量不符合条件判断时，执行下面代码
            return
        }
        self.GroupVm?.pdid = pdid
        self.GroupVm?.getGroupModel.onNext(orderId)
    }
    
    override func viewWillDisappear(_ animated: Bool) {
        super.viewWillDisappear(animated)
    }
    
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        
        
        
        
        
        
    }
    /**
     界面基础设置
     */
    override func setupUI() {
        /**
         *  自定义 导航栏左侧 返回按钮
         */
        self.customLeftBarButtonItem()
        self.setupTableView()
    }
    
    func setupTableView()
    {
        self.custom_TableView.showsVerticalScrollIndicator = false
        custom_TableView.delegate = self
        custom_TableView.dataSource = self
    }
    
    /**
     绑定到viewmodel 设置
     */
    override func bindToViewModel(){
        
        self.GroupVm = GetOrderGroupVm()
        
        self.GroupVm?.backDate.asObservable().subscribe(onNext:{ data in
            
            
            self.groupModel = data
            self.type = Int(data.pdtype) ?? 0
            if data.pdtype == "1"{
                self.title = "组合商品"
            }else{
                self.title = "买赠商品"
            }
            
        }).addDisposableTo(disposeBag)
        
        //显示加载动画
        self.GroupVm?.refreshing.asObservable().bindTo(self.view.rx_loading).addDisposableTo(disposeBag)
        //显示错误
        self.GroupVm?.error.asObservable().bindTo(self.view.rx_error).addDisposableTo(disposeBag)
    }
    
}
extension CombinationGoodsVc:UITableViewDelegate,UITableViewDataSource{
    func numberOfSections(in tableView: UITableView) -> Int {
        if let _ = groupModel{
            return 1
        }else{
            return 0
        }
    }
    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        if let model = groupModel{
            return model.dataArr.count
        }else{
            return 0
        }
    }
    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: "cell") as! Combination_Cell_TableViewCell
        cell.item = groupModel?.dataArr[indexPath.row]
        if self.type == 1{
            cell.goodType.text = "商品\(indexPath.row + 1)"
        }else{
            if cell.item?.shprice == 0{
                cell.goodType.text = "赠品"
            }else{
                cell.goodType.text = "主商品\(indexPath.row + 1)"
            }
        }
        return cell
    }
    func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
        let cell = tableView.dequeueReusableCell(withIdentifier: "header") as! Combination_Header_TableViewCell
        cell.item = groupModel
        return cell.contentView
    }
    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
        if let model = groupModel{
            _ = "productdetail".openURL(["pdid":"\(model.dataArr[indexPath.row].pdid)"])
        }
    }
    func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
        
        return 245/2
    }
}
